草庐IT

php - 设置 $_POST 变量

全部标签

ruby-on-rails - 内置 Capistrano 变量

有人知道所有内置Capistrano变量的列表,例如current_path等吗? 最佳答案 您可以在以下位置找到所有这些:https://github.com/capistrano/capistrano/blob/legacy-v2/lib/capistrano/recipes/deploy.rb更新:v3不再具有与v2相同的配置选项。我在上面链接了v2配置选项,但v3具有以下内容:这是遗留的,保留在这篇文章中:#===========================================================

Ruby:使用 Object.send 分配变量

有什么办法可以做这样的事情吗?a=Struct.new(:c).new(1)b=Struct.new(:c).new(2)a.send(:c)=>1b.send(:c)=>2a.send(:c)=b.send(:c)最后一行导致错误:syntaxerror,unexpected'=',expecting$enda.send(:c)=b.send(:c)^ 最佳答案 a.send(:c=,b.send(:c))foo.bar=baz不是调用方法bar后跟赋值-它是调用方法bar=。因此,您需要告诉send调用该方法。

ruby-on-rails - 在 Ruby 中,我可以在初始化方法中以某种方式自动填充实例变量吗?

在Ruby中,我可以在初始化方法中以某种方式自动填充实例变量吗?例如,如果我有:classWeekendattr_accessor:start_date,:end_date,:title,:description,:locationdefinitialize(params)#SOMETHINGHERETOAUTOPOPULATEINSTANCEVARIABLESWITHAPPROPRIATEPARAMSendend 最佳答案 您可以使用instance_variable_set像这样:params.eachdo|key,value|

ruby - 测试变量是否与多个字符串中的任何一个匹配,而没有长的 if-elsif 链或 case-when

我想在ruby​​中有一种很好的单行方式来表达ifmystr=="abc"or"def"or"ghi"or"xyz"但在我通常查阅的在线引用资料中找不到如何做到这一点...谢谢! 最佳答案 也许你不知道你可以在一个案例上放置多个条件:casemystrwhen"abc","def","ghi","xyz"..end但是对于这个特定的基于字符串的测试,我会使用正则表达式:ifmystr=~/\A(?:abc|def|ghi|xyz)\z/如果您不想构造正则表达式,也不想使用case语句,您可以创建一个对象数组并使用Array#incl

ruby - 如何设置搜索排序的默认值?

简而言之,我只想知道是否有办法使用Ransackgem为排序功能设置默认值?即。目前,我在页面加载时有以下内容:但是,我希望在页面加载时具有以下默认值:是否可以通过正确配置RansackGem来做到这一点?一如既往地提前致谢!最好的问候! 最佳答案 这对我有用:@search=Change.search(params[:q])@search.sorts='updated_atdesc'if@search.sorts.empty?注意:一开始我有些头疼,因为我的desc是大写的——这根本行不通。

ruby-on-rails - 我如何设置 'attr_accessible' 以不允许访问使用 Ruby on Rails 的模型的任何字段?

如果在模型文件中我只有这段代码:classUsers这是什么意思?与模型相关的所有属性是否可访问?如何设置“attr_accessible”以便不允许访问该模型的任何字段? 最佳答案 只需设置:classUsers正如PanThomakos所说(attr_accessible是可以被mass-ret的参数数组。所以如果你不发送任何符号,那么就没有参数可以访问。Thisticketwasuseful 关于ruby-on-rails-我如何设置'attr_accessible'以不允许访问使

ruby-on-rails - 使用 Test::Unit 和 Shoulda 设置 Factory Girl

我正在尝试在RubyonRails中使用Test::Unit和Shoulda设置FactoryGirl。我已经安装了gem,在test/factories目录下创建了我的工厂文件,并在test/models目录下创建了我的spec文件。我得到的当前错误是“ArgumentError:没有这样的工厂:测试”,这让我相信没有加载test_factory.rb文件?关于我应该更改什么有任何想法吗?这是我的文件。#test/factories/test_factory.rbFactory.define:testdo|t|t.name'test_spotlight't.label'testspo

Ruby 将散列中的值转换为局部变量

假设我有这个哈希:entry={"director"=>"ChrisNolan","producer"=>"SumDuk","writer"=>"SaadBakk"}我想将每个键和相关值提取到它自己的局部变量中:director="ChrisNolan"producer="SumDuk"...通过使用循环而不是:director=entry["director"]因为有很多值,我不想单独做。我发现它几乎完美地工作,除了它创建了一个实例变量,我想要一个局部变量,但是local_variable_set由于某种原因不存在。entry.each_pair{|k,v|instance_vari

ruby-on-rails - 我可以在 Ruby 1.9 上设置默认字符串编码吗?

这听起来可能微不足道,但它让我抓狂。自上周五在Ruby1.9上发布应用程序到生产环境以来,我一直遇到许多与字符编码相关的小异常。几乎所有内容都是以下方面的一些变体:Encoding::CompatibilityError:incompatiblecharacterencodings:ASCII-8BITandUTF-8我们有一个国际用户群,所以很多名字都包含元音变音等。如果我修复模板以在很多地方使用force_encoding,它会在flash消息帮助器中弹出。等等。目前看来我已经确定了所有我知道的,方法是在一个地方修补ActiveSupport的字符串连接,然后在顶部设置#encod

ruby - 在 cron 中为 whenever 设置路径以便它可以找到 ruby

我的ruby在/usr/local/bin中。whenever找不到它,并且在我的cron文件顶部设置PATH也不起作用,我认为是因为无论何时在新的bash实例中运行命令。#thisdoesnotworkPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin#BeginWhenevergeneratedtasksfor:foo0****/bin/bash-l-c'cd/srv/foo/releases/20110429110637&&script/railsrunner-eproduction'\''ActiveRecord::Sessio